Software piracy is a large financial concern for software manufacturers. Although the current trend from software manufacturers is to grant a license to a user to personally use one or two copies of the application, users may sometimes violate the terms of the license and attempt to use the application on more than the number of licensed computers. Alternately, the software may fall into the hands of a non-licensed user who may attempt to use the software.
One method of thwarting such non-licensed activities is to require the licensed user to participate in an activation of the software application shortly after initial installation. During this process, the user provides such information as the product and serial numbers of the software back to the software manufacturer. This may be performed either on-line or over the phone by keying in digits representing the requested information. Often, the product and serial numbers are several dozen digits long. The software manufacturer can then verify that the software license for the specific product is valid. As part of the process, a hardware identifier (HWID) is typically generated which identifies not the specific user machine, but the configuration of hardware that the software is being installed onto. This HWID is logged as the initial hardware configuration that the user has upon software activation.
Generally, the manufacturer responds to the user supplied product, serial number, and HWID information with a confirmation that the information is valid. An activation code may be issued to the user computer to enable the software application to function for the user. In operation, the installed application can then verify, upon subsequent application accesses, that the hardware configuration, via the HWID, has not changed significantly. If the HWID is changed upon an application access, it may be an indication that the application has been moved to a different machine in violation of the software agreement. Under these circumstances, the user would then be prevented from accessing the application. In this way, the activation process becomes a guardian of the software license agreement by preventing use of the software application in a piracy condition.
However, the reason for the HWID change in the user computer may not have been a violation of the agreement. The change in HWID could be the result of a major hardware upgrade that the legitimate license holder is using to run her licensed software. Under those conditions, the application requires that a reactivation activity be successfully completed before the software may be accessed by the user. Reactivation requires that the user re-enter some or all of the information concerning the product and serial number information. Once again, this may be performed either on-line or via a telephone interaction which may involve dozens of digits to enter by hand. Since every application which has activation protection would require reactivation after a major hardware change, each application has the ability to stop the legitimate user from accessing his licensed software until a reactivation is performed on every application. This can be a long and arduous task, especially if performed manually via a telephone communications link.
FIG. 1A depicts a typical prior art scenario where multiple reactivations may occur. In this scenario, a user activates application 1 at time T=0 on a single computer. As discussed above, the activation causes a specific HWID to be constructed to indicate the hardware configuration of the computer at the time of application 1 activation. Assume no significant hardware changes are made and the user activates application 2 and application 3 at times T=1 and T=2 respectively. At time T=3, the legitimate user's computer undergoes a hardware change that jumps the threshold of tolerance set up by the anti-piracy activation software in the various applications. With the hardware change threshold exceeded, any new access of the piracy-protected applications will cause a reactivation request to occur.
At time T=4, the user accesses application 1. The application anti-piracy software detects that a significant hardware change has taken place. The application then requires the user to perform a reactivation process. The reactivation process occurs at time T=5 and the user is granted continued access to his software. The user then accesses a next application, random in order, application 3 at T=6. The piracy protected software once again detects the significant hardware change and requests reactivation. The user complies at time T=7 and reactivates application 3. At time T=8, the user access her next application, here application 2. Once again, the piracy detection software detects that significant hardware change and requests that application 2 be reactivated. The user must comply if she wishes to access application 3, so reactivation occurs at time T=9. This process may continue for each and every application that the user has installed that is associated with the original HWID.
A better scenario would be that shown in FIG. 1B. Here, the same timeline is depicted for T=0 through T=5. The user activates software at T=0 thru T=2, encounters a significant hardware change at T=3, and accesses and reactivates activates application 1 at times T=4 and T=5 respectively. However, upon access to application 3 and application 2 at times T=6 and t=8 respectively, it would be more convenient to the user if a reactivation is not required. However, this scenario is not currently available to the user under present anti-piracy activation schemes; especially those using telephone link reactivation techniques.
Thus, there is a need for a method that allows a more convenient method of reactivation of legitimate software in order to save the licensed user the trouble of having to reactivate software that have compatible HWIDs. The present invention addresses the aforementioned needs and solves them with additional advantages as expressed herein.